#ifndef DEMO_OBJECTWRAPPERBASE_H
#define DEMO_OBJECTWRAPPERBASE_H

#include "object.h"

#include <QtCore/QObject>
#include <QtScript/QScriptEngine>
#include <QtScript/QScriptValue>

class ObjectWrapperBase : public QObject
{
    Q_OBJECT

public:
    ObjectWrapperBase(Object& object, QScriptEngine& engine, QObject* parent = 0) :
        QObject(parent), m_object(object), m_engine(engine)
    {}

    Q_INVOKABLE virtual QScriptValue increment() = 0;

protected:
    Object& m_object;
    QScriptEngine& m_engine;
};

#endif
